import Http from '../http';

// 分页查询文件列表
export const queryLimit = function(queryWhere: any) {
    return Http.post('/sysFileInfo/queryLimit', queryWhere)
}

// 根据ID查询单条文件信息
export const queryOne = function(id: string) {
    return Http.get(`/sysFileInfo/queryOne/${id}`)
}

// 删除文件
export const delFile = function(idList: string[]) {
    return Http.delete('/sysFileInfo/dels', { idList })
}

// 新增文件
export const saveFile = function(fileInfo: any) {
    return Http.post('/sysFileInfo/save', fileInfo)
}

// 修改文件
export const updateFile = function(fileInfo: any) {
    return Http.put('/sysFileInfo/update', fileInfo)
}

// 文件上传
export const uploadFile = function(file: FormData) {
    return Http.post('/sysFile/api/upload', file, {
        headers: {
            'Content-Type': 'multipart/form-data'
        }
    })
}

// 文件下载
export const downloadFile = function(fileId: string) {
    return Http.get(`/sysFile/api/download?fileId=${fileId}`, {}, {
        responseType: 'blob'
    })
}

// 文件删除 - 后端没有单独的删除接口，使用基础CRUD的删除接口
export const deleteFile = function(fileId: string) {
    return Http.delete(`/sysFileInfo/dels`, { idList: [fileId] })
}